package ln.javatest.day08.demo01;
/*
默认方法会被实现类继承
*/

public class Demo02Interface {
    public static void main(String[] args) {
        //创建了实现类的对象
        MyInterfaceDefaultA a = new MyInterfaceDefaultA();
        //调用抽象方法，世纪运行的是右侧实现类
        a.methodAbs();  //实现了抽象方法AAA。
        //调用默认方法，如果实现类当中没有，会向上找接口
        a.methodDefault(); //这是新添加的m默认方法
        System.out.println("====================");
        MyInterfaceDefaultB b = new MyInterfaceDefaultB();
        //调用抽象方法，世纪运行的是右侧实现类
        b.methodAbs();  //实现了抽象方法BBB。
        //调用默认方法，如果实现类B中覆盖重写了默认方法，用实现类B中的。
        b.methodDefault(); //实现类B覆盖重写了接口的默认方法。
    }

}
